#pragma once

#include<stdio.h>
#include<stdlib.h>
#include<assert.h>
#include<stdbool.h>
#include"BinaryTree.h"


typedef BTNode*  QData;

typedef struct Queue
{
	QData data;
	struct Queue* next;
}Queue;

typedef struct Que
{
	Queue* head;
	Queue* tail;
}Que;

void QueueInit(Que* q);

void QueuePush(Que* q,QData x);

void QueuePop(Que* q);

void QueuePrint(Que* q);

bool QueueEmpty(Que* q);

void QueueDestory(Que* q);

BTNode* QueueTop(Que* q);





